This invention relates to integrated semiconductor devices and systems, and more particularly to features of a high-speed, miniaturized, electronic digital signal processing system in single-chip microcomputer form.
A microprocessor device is a central processing unit or CPU for a digital processor which is usually contained in a single semiconductor integrated circuit or "chip" fabricated by MOS/LSI technology, as shown in U.S. Pat. No. 3,757,306 issued to Gary W. Boone and assigned to Texas Instruments. The Boone patent shows a single-chip 8-bit CPU including a parallel ALU, registers for data and addresses, an instruction register and a control decoder, all interconnected using the Von Neumann architecture and employing a bidirectional parallel bus for data, address and instructions. U.S. Pat. No. 4,074,351, issued to Gary W. Boone, and Michael J. Cochran, assigned to Texas Instruments, shows a single-chip "microcomputer" type device which contains a 4-bit parallel ALU and its control circuitry, with on-chip ROM for program storage and on-chip RAM for data storage, constructed in the Harvard architecture. The term microprocessor usually refers to a device employing external memory for program and data storage, while the term microcomputer refers to a device with on-chip ROM and RAM for program and data storage; the terms are also used interchangeably, however, and are not intended as restrictive as to some features of this invention.
In contrast, a special-purpose high-speed microcomputer device can be constructed which departs from these contemporary microprocessor devices in several major respects in order to achieve substantial speed and performance advantages. Such advantages are especially important in digital signal processing applications. This device is generally a non-microcoded processor using a modified Harvard architecture.
Data communication among such contemporary microprocessors and microcomputers, as well as among such microprocessors and microcomputers specially adapated for digital signal processing, can be accomplished either in parallel or serially. Parallel communication of digital data utilizes a plurality of data lines simultaneously communicating each of the binary digits in a data word, while serial communication utilizes a single data line which communicates the binary digits in the data word in a time sequence. Serial communication is highly utilized in telecommunications between computers, as the computers need not be utilize the same data word width (e.g., an eight bit computer may communicate with a sixteen bit computer), and communication may take place over existing telephone lines via modems or codecs. Of course, for serial communication to be performance competitive with parallel communication, the data rate of the individual bits must be quite high.
In order to increase the data rate of serial communication between computers, and in order to allow flexibility in such communication, full-duplex communication is useful; such full-duplex communication allowing a single computer system to transmit and receive data simultaneously. Dual-port serial communication further increases the data rate, since data words can be received or sent simultaneously over two serial data lines, effectively doubling the data rate as seen externally from the microprocessor or microcomputer.
In performing input and output functions, however, the central logic unit of a microprocessor generally must store data into (for output) or read data from (for input) dedicated locations; these dedicated locations are required for either serial or parallel input/output. In order to allow the microprocessor to perform such input and output to a plurality of input and output devices over a single data bus, the microprocessor must be able to address the desired device. For a microprocessor having both serial and parallel input and output, each serial port and each parallel port which is accessible via the data bus will necessarily have separate addresses. For a limited number of address pins which can be used to address external input and output devices, the number of such addresses is similarly limited. As a result, in order to maximize the input and output flexibility of a microprocessor while minimizing the number of terminals necessary to do so, it is desirable that the serial port occupy a single port address. Heretofore, however, in order to have multiple serial port channels for a microprocessor, multiple port addresses have been required.
It is evident that the benefits of a dual-channel serial port can thus be offset by the need to have additional port addresses for the additional serial channel. These additional locations not only present the programmer with fewer available input and output port addresses for external devices, but also presents reduced portability of the software between a microprocessor having a single-channel serial port and the dual-channel serial port microprocessor.
It is therefore an object of this invention to provide a multiple-channel serial port which utilizes only a single external port address.
It is a further object of this invention to provide such a multiple-channel microprocessor serial port which can easily be programmed to function as a single-channel serial port.
Other objects and advantages of the invention will be apparent to those skilled in the art having reference to this specification.